/*
 * @Author: 詹真琦(legendryztachi@gmail.com)
 * @Date: 2022-04-28 14:26:40
 * @LastEditors: 詹真琦(legendryztachi@gmail.com)
 * @LastEditTime: 2022-04-28 17:50:59
 * @FilePath: \code\cwp-front\pc-collaboration\src\handles\handle-list\summary\modules\systemAudit\index.js
 * @Description: 一些特殊的提交、回退操作
 * | 表单审批通过 formAuditPass 提交| 不通过 formAuditNo 回退|
| 核定通过 vouchPass 提交| 核定不通过 vouchNo 回退|
| 公告审批通过并发布 bulletionAuditPass 弹窗+提交| 不通过 bulletionAuditNo 终止|
| 新闻审批通过并发布 newsAuditPass 弹窗+提交| 不通过 newsAuditNo  终止|
 */
//提交
import submit from '../continue-submit';
//回退
import returnFunction from '../return';
//终止
import terminate from '../terminate';
function systemAudit(btn) {
    const { submitAction } = btn;
    switch (submitAction) {
        //表单审批通过、核定通过走提交
        case 'formAuditPass':
        case 'vouchPass':
            submit.call(this, btn);
            break;
        //表单审批、核定不通过走回退
        case 'formAuditNo':
        case 'vouchNo':
            returnFunction.call(this);
            break;
        //公告、新闻审批通过并发布
        case 'bulletionAuditPass':
        case 'newsAuditPass':
            submit.call(this, btn);
            break;
        //公告、新闻审批不通过。 终止
        case 'bulletionAuditNo':
        case 'newsAuditNo':
            terminate.call(this);
            break;
    }
}

export default function (btn) {
    return new Promise((resolve) => {
        systemAudit.call(this, btn);
        resolve();
    });
}
